package com.wenx.v3system.modular.platform.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.wenx.v3system.modular.platform.domain.po.PlatformUserRole;

import java.util.List;

/**
 * 平台用户角色关联服务接口
 * 简化权限模型 - 直接使用角色编码
 * 
 * @author wenx
 */
public interface PlatformUserRoleService extends IService<PlatformUserRole> {

    /**
     * 根据用户ID查询角色编码列表
     *
     * @param userId 用户ID
     * @return 角色编码列表
     */
    List<String> getRoleCodesByUserId(Long userId);

    /**
     * 批量分配用户角色
     *
     * @param userId 用户ID
     * @param roleIds 角色ID列表
     */
    void assignUserRoles(Long userId, List<String> roleIds);

    /**
     * 删除用户的所有角色
     *
     * @param userId 用户ID
     */
    void removeUserRoles(Long userId);

}